// 文件操作：
// 1.文件写入
const fs = require("fs");
// let str = "hello你好";
// try {
//   fs.writeFileSync("./data.txt", str);
//   console.log("写入成功");
// } catch (err) {
//   console.log(err);
// }

// 2.文件读取
// 异步读取文件：都是有回调函数的
// fs.readFile("./data.txt", (err, data) => {
//   if (err) {
//     return console.log(err);
//   }
//   console.log(data);  // 获得的是一个buffer数据
//   console.log(data.toString()); // 把buffer数据转换成字符串
// })

// 同步读取文件，没有回调
// try {
//   let data = fs.readFileSync("./data.txt");
//   console.log(data.toString());
// } catch (err) {
//   console.log(err);
// }

// 3.修改文件
// 修改文件名 异步
// fs.rename("./data.txt", "./2.txt", err => {
//   if (err) {
//     return console.log(err);
//   }
//   console.log("修改成功");
// })

// 修改文件名 同步
// try {
//   fs.renameSync("./2.txt", "./3.txt");
//   console.log("修改成功");
// } catch (err) {
//   console.log("错误");
// }

// 修改文件内容：先读取 在修改 在写入
// 先读取文件内容
// let str = fs.readFileSync("./data.txt").toString();
// // 在修改内容
// let reg = /[a-zA-Z]+/g;
// let res = str.replace(reg, 123);
// console.log(res);
// // 在写入内容
// fs.writeFileSync("./data.txt", res);

// 4.删除文件
// 异步删除文件
// fs.unlink("./3.txt", err => {
//   if (err) {
//     return console.log(err);
//   }
//   console.log("删除成功");
// })

// // 同步删除文件
// try {
//   fs.unlinkSync("./1.txt");
//   console.log("删除成功");
// } catch (err) {
//   console.log(err);
// }

// 5.复制文件
// 异步复制文件
